package com.ft.admix.ad;

import android.app.Activity;
import android.view.View;
import android.view.ViewGroup;

import com.bytedance.sdk.openadsdk.TTFeedAd;
import com.bytedance.sdk.openadsdk.mediation.MediationConstant;
import com.bytedance.sdk.openadsdk.mediation.ad.MediationNativeAdAppInfo;
import com.bytedance.sdk.openadsdk.mediation.ad.MediationViewBinder;
import com.bytedance.sdk.openadsdk.mediation.custom.MediationCustomNativeDislikeDialog;

import java.util.List;
import java.util.Map;

public interface IMixCustomNativeAd {

    void setBiddingPrice(double var1);

    void setMediaExtraInfo(Map<String, Object> var1);

    void setTitle(String var1);

    void setDescription(String var1);

    void setIconUrl(String var1);

    void setImageUrl(String var1);

    void setImageWidth(int var1);

    void setImageHeight(int var1);

    void setActionText(String var1);

    void setPackageName(String var1);

    void setVideoWidth(int var1);

    void setVideoHeight(int var1);

    void setStarRating(double var1);

    void setImageList(List<String> var1);

    void setSource(String var1);

    void setExpressAd(boolean var1);

    void setAdImageMode(int var1);

    void setInteractionType(int var1);

    void setNativeAdAppInfo(MixNativeAdAppInfo var1);

    int getBiddingType();

    boolean isUseCustomVideo();

    void callAdClick();

    void callAdShow();

    void callRenderSuccess(float var1, float var2);

    void callRenderFail(View var1, int var2, String var3);

    void callVideoStart();

    void callVideoPause();

    void callVideoResume();

    void callVideoCompleted();

    void callVideoError(int var1, String var2);

    void callVideoProgressUpdate(long var1, long var3);

    void callOnIdle();

    void callOnDownloadActive(long var1, long var3);

    void callOnDownloadPaused(long var1, long var3, String var5, String var6);

    void callOnDownloadFailed(long var1, long var3, String var5, String var6);

    void callOnDownloadFinished(long var1, String var3, String var4);

    void callOnInstalled(String var1, String var2);

    void callDislikeShow();

    void callDislikeCancel();

    void callDislikeSelected(int var1, String var2);

//    void setDislikeDialogCallBack(MediationCustomNativeDislikeDialog var1);

    boolean isClientBidding();

    boolean isServerBidding();

    void render(ViewGroup viewGroup);

    View getExpressView(ViewGroup viewGroup);

    String getVideoUrl();

    boolean hasDislike();

    void onPause();

    void onResume();

    void onDestroy();

    MediationConstant.AdIsReadyStatus isReadyCondition();

    void receiveBidResult(boolean var1, double var2, int var4, Map<String, Object> var5);
}
